using ET;
using ProtoBuf;

using System.Collections.Generic;
namespace ET
{
    [ResponseType("M2C_TestResponse")]
    [Message(OuterOpcode.C2M_TestRequest)]
    [ProtoContract]
    public partial class C2M_TestRequest : Object, IActorLocationRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(93)]
        public long ActorId { get; set; }

        [ProtoMember(1)]
        public string request { get; set; }

    }

    [Message(OuterOpcode.M2C_TestResponse)]
    [ProtoContract]
    public partial class M2C_TestResponse : Object, IActorLocationResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

        [ProtoMember(1)]
        public string response { get; set; }

    }

    [ResponseType("Actor_TransferResponse")]
    [Message(OuterOpcode.Actor_TransferRequest)]
    [ProtoContract]
    public partial class Actor_TransferRequest : Object, IActorLocationRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(93)]
        public long ActorId { get; set; }

        [ProtoMember(1)]
        public int MapIndex { get; set; }

    }

    [Message(OuterOpcode.Actor_TransferResponse)]
    [ProtoContract]
    public partial class Actor_TransferResponse : Object, IActorLocationResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

    }

    [ResponseType("G2C_EnterMap")]
    [Message(OuterOpcode.C2G_EnterMap)]
    [ProtoContract]
    public partial class C2G_EnterMap : Object, IRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

    }

    [Message(OuterOpcode.G2C_EnterMap)]
    [ProtoContract]
    public partial class G2C_EnterMap : Object, IResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

        // 自己的unit id
        // 自己的unit id
        [ProtoMember(1)]
        public long UnitId { get; set; }

        // 所有的unit
        // 所有的unit
        [ProtoMember(2)]
        public List<UnitInfo> Units = new List<UnitInfo>();

    }

    [Message(OuterOpcode.UnitInfo)]
    [ProtoContract]
    public partial class UnitInfo : Object
    {
        [ProtoMember(1)]
        public long UnitId { get; set; }

        [ProtoMember(2)]
        public int ConfigId { get; set; }

        [ProtoMember(3)]
        public float X { get; set; }

        [ProtoMember(4)]
        public float Y { get; set; }

        [ProtoMember(5)]
        public float Z { get; set; }

        [ProtoMember(6)]
        public List<int> Ks = new List<int>();

        [ProtoMember(7)]
        public List<long> Vs = new List<long>();

    }

    [Message(OuterOpcode.M2C_CreateUnits)]
    [ProtoContract]
    public partial class M2C_CreateUnits : Object, IActorMessage
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(93)]
        public long ActorId { get; set; }

        [ProtoMember(2)]
        public List<UnitInfo> Units = new List<UnitInfo>();

    }

    [Message(OuterOpcode.C2M_PathfindingResult)]
    [ProtoContract]
    public partial class C2M_PathfindingResult : Object, IActorLocationMessage
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(93)]
        public long ActorId { get; set; }

        [ProtoMember(1)]
        public float X { get; set; }

        [ProtoMember(2)]
        public float Y { get; set; }

        [ProtoMember(3)]
        public float Z { get; set; }

    }

    [Message(OuterOpcode.C2M_Stop)]
    [ProtoContract]
    public partial class C2M_Stop : Object, IActorLocationMessage
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(93)]
        public long ActorId { get; set; }

    }

    [Message(OuterOpcode.M2C_PathfindingResult)]
    [ProtoContract]
    public partial class M2C_PathfindingResult : Object, IActorMessage
    {
        [ProtoMember(93)]
        public long ActorId { get; set; }

        [ProtoMember(1)]
        public long Id { get; set; }

        [ProtoMember(2)]
        public float X { get; set; }

        [ProtoMember(3)]
        public float Y { get; set; }

        [ProtoMember(4)]
        public float Z { get; set; }

        [ProtoMember(5)]
        public List<float> Xs = new List<float>();

        [ProtoMember(6)]
        public List<float> Ys = new List<float>();

        [ProtoMember(7)]
        public List<float> Zs = new List<float>();

    }

    [Message(OuterOpcode.M2C_Stop)]
    [ProtoContract]
    public partial class M2C_Stop : Object, IActorMessage
    {
        [ProtoMember(1)]
        public int Error { get; set; }

        [ProtoMember(2)]
        public long Id { get; set; }

        [ProtoMember(3)]
        public float X { get; set; }

        [ProtoMember(4)]
        public float Y { get; set; }

        [ProtoMember(5)]
        public float Z { get; set; }

        [ProtoMember(6)]
        public float A { get; set; }

        [ProtoMember(7)]
        public float B { get; set; }

        [ProtoMember(8)]
        public float C { get; set; }

        [ProtoMember(9)]
        public float W { get; set; }

    }

    [ResponseType("G2C_Ping")]
    [Message(OuterOpcode.C2G_Ping)]
    [ProtoContract]
    public partial class C2G_Ping : Object, IRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

    }

    [Message(OuterOpcode.G2C_Ping)]
    [ProtoContract]
    public partial class G2C_Ping : Object, IResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

        [ProtoMember(1)]
        public long Time { get; set; }

    }

    [Message(OuterOpcode.G2C_Test)]
    [ProtoContract]
    public partial class G2C_Test : Object, IMessage
    {
    }

    [ResponseType("M2C_Reload")]
    [Message(OuterOpcode.C2M_Reload)]
    [ProtoContract]
    public partial class C2M_Reload : Object, IRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(1)]
        public string Account { get; set; }

        [ProtoMember(2)]
        public string Password { get; set; }

    }

    [Message(OuterOpcode.M2C_Reload)]
    [ProtoContract]
    public partial class M2C_Reload : Object, IResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

    }

    [ResponseType("R2C_Login")]
    [Message(OuterOpcode.C2R_Login)]
    [ProtoContract]
    public partial class C2R_Login : Object, IRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(1)]
        public string Account { get; set; }

        [ProtoMember(2)]
        public string Password { get; set; }

    }

    [Message(OuterOpcode.R2C_Login)]
    [ProtoContract]
    public partial class R2C_Login : Object, IResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

        [ProtoMember(1)]
        public string Address { get; set; }

        [ProtoMember(2)]
        public long Key { get; set; }

        [ProtoMember(3)]
        public long GateId { get; set; }

    }

    [ResponseType("G2C_LoginGate")]
    [Message(OuterOpcode.C2G_LoginGate)]
    [ProtoContract]
    public partial class C2G_LoginGate : Object, IRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(1)]
        public long Key { get; set; }

        [ProtoMember(2)]
        public long GateId { get; set; }

    }

    [Message(OuterOpcode.G2C_LoginGate)]
    [ProtoContract]
    public partial class G2C_LoginGate : Object, IResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

        [ProtoMember(1)]
        public long PlayerId { get; set; }

    }

    [Message(OuterOpcode.G2C_TestHotfixMessage)]
    [ProtoContract]
    public partial class G2C_TestHotfixMessage : Object, IMessage
    {
        [ProtoMember(1)]
        public string Info { get; set; }

    }

    [ResponseType("M2C_TestActorResponse")]
    [Message(OuterOpcode.C2M_TestActorRequest)]
    [ProtoContract]
    public partial class C2M_TestActorRequest : Object, IActorLocationRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public long ActorId { get; set; }

        [ProtoMember(1)]
        public string Info { get; set; }

    }

    [Message(OuterOpcode.M2C_TestActorResponse)]
    [ProtoContract]
    public partial class M2C_TestActorResponse : Object, IActorLocationResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

        [ProtoMember(1)]
        public string Info { get; set; }

    }

    [Message(OuterOpcode.PlayerInfo)]
    [ProtoContract]
    public partial class PlayerInfo : Object, IMessage
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

    }

    [ResponseType("G2C_PlayerInfo")]
    [Message(OuterOpcode.C2G_PlayerInfo)]
    [ProtoContract]
    public partial class C2G_PlayerInfo : Object, IRequest
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

    }

    [Message(OuterOpcode.G2C_PlayerInfo)]
    [ProtoContract]
    public partial class G2C_PlayerInfo : Object, IResponse
    {
        [ProtoMember(90)]
        public int RpcId { get; set; }

        [ProtoMember(91)]
        public int Error { get; set; }

        [ProtoMember(92)]
        public string Message { get; set; }

        [ProtoMember(1)]
        public PlayerInfo PlayerInfo { get; set; }

        [ProtoMember(2)]
        public List<PlayerInfo> PlayerInfos = new List<PlayerInfo>();

        [ProtoMember(3)]
        public List<string> TestRepeatedString = new List<string>();

        [ProtoMember(4)]
        public List<int> TestRepeatedInt32 = new List<int>();

        [ProtoMember(5)]
        public List<long> TestRepeatedInt64 = new List<long>();

    }

}
